Generally, in a typical computing environment, a memory manager allocates memory for various applications. The applications may request memory of varying sizes, from small chunks of memory to large chunks of memory. In return, the memory manager allocates the requested size from a block of memory and distributes the allocated memory to the application. However, there may be issues with performance in efficiently distributing memory of varying sizes. Specifically, memory managers tend to degrade the longer they run because as they allocate from the block of memory, the block of memory becomes fragmented. As a result, the memory manager may take a longer time to scan the fragmented block of memory to find a requested memory size.
In the drawings, like reference numbers generally indicate identical or similar elements. Additionally, generally, the left-most digit(s) of a reference number identifies the drawing in which the reference number first appears.